From 3183a213472067534ba907d78edf57af96f277a2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20=C3=85dahl?= Date: Fri, 17 Feb 2023 11:59:14 +0100 Subject: [PATCH] wayland/glcontext: Don't call wl_surface.offset on old objects The availability of wl_surface.offset depends on the compositor, so we can't call it unconditionally. Add a version check to so we only call offset if we know we won't raise a protocol error. Fixes: 0eb791eaaa ("Make mask nodes more versatile") --- gdk/wayland/gdkglcontext-wayland.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gdk/wayland/gdkglcontext-wayland.c b/gdk/wayland/gdkglcontext-wayland.c index 44e15fa0fd..7becec5ed5 100644 --- a/gdk/wayland/gdkglcontext-wayland.c +++ b/gdk/wayland/gdkglcontext-wayland.c @@ -68,7 +68,9 @@ gdk_wayland_gl_context_end_frame (GdkDrawContext *draw_context, gdk_wayland_surface_sync (surface); gdk_wayland_surface_request_frame (surface); - wl_surface_offset (impl->display_server.wl_surface, dx, dy); + if (wl_surface_get_version (impl->display_server.wl_surface) >= + WL_SURFACE_OFFSET_SINCE_VERSION) + wl_surface_offset (impl->display_server.wl_surface, dx, dy); GDK_DRAW_CONTEXT_CLASS (gdk_wayland_gl_context_parent_class)->end_frame (draw_context, painted); -- 2.30.2